.class public Lcom/instagram/android/service/f;
.super Lcom/fasterxml/jackson/databind/ObjectMapper;
.source "CustomObjectMapper.java"


# static fields
.field private static a:Lcom/instagram/android/service/f;


# direct methods
.method private constructor <init>()V
    .locals 6

    .prologue
    const/4 v5, 0x0

    .line 41
    invoke-direct {p0}, Lcom/fasterxml/jackson/databind/ObjectMapper;-><init>()V

    .line 42
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->AUTO_DETECT_FIELDS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 43
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->AUTO_DETECT_SETTERS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 44
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->USE_ANNOTATIONS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 45
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->AUTO_DETECT_CREATORS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 46
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->USE_GETTERS_AS_SETTERS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 47
    sget-object v0, Lcom/fasterxml/jackson/databind/MapperFeature;->CAN_OVERRIDE_ACCESS_MODIFIERS:Lcom/fasterxml/jackson/databind/MapperFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/MapperFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 48
    sget-object v0, Lcom/fasterxml/jackson/databind/DeserializationFeature;->FAIL_ON_UNKNOWN_PROPERTIES:Lcom/fasterxml/jackson/databind/DeserializationFeature;

    invoke-virtual {p0, v0, v5}, Lcom/instagram/android/service/f;->configure(Lcom/fasterxml/jackson/databind/DeserializationFeature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 50
    new-instance v0, Lcom/fasterxml/jackson/databind/module/SimpleModule;

    const-string v1, "MediaModule"

    new-instance v2, Lcom/fasterxml/jackson/a/w;

    const/4 v3, 0x1

    const/4 v4, 0x0

    invoke-direct {v2, v3, v5, v5, v4}, Lcom/fasterxml/jackson/a/w;-><init>(IIILjava/lang/String;)V

    invoke-direct {v0, v1, v2}, Lcom/fasterxml/jackson/databind/module/SimpleModule;-><init>(Ljava/lang/String;Lcom/fasterxml/jackson/a/w;)V

    .line 52
    const-class v1, Lcom/instagram/android/model/b/e;

    new-instance v2, Lcom/instagram/android/service/h;

    const-class v3, Lcom/instagram/android/model/b/e;

    invoke-static {}, Lcom/instagram/service/d;->a()Lcom/instagram/service/d;

    move-result-object v4

    invoke-direct {v2, p0, p0, v3, v4}, Lcom/instagram/android/service/h;-><init>(Lcom/instagram/android/service/f;Lcom/instagram/android/service/f;Ljava/lang/Class;Lcom/instagram/service/d;)V

    invoke-virtual {v0, v1, v2}, Lcom/fasterxml/jackson/databind/module/SimpleModule;->addValueInstantiator(Ljava/lang/Class;Lcom/fasterxml/jackson/databind/deser/ValueInstantiator;)Lcom/fasterxml/jackson/databind/module/SimpleModule;

    .line 54
    const-class v1, Lcom/instagram/venue/model/Venue;

    new-instance v2, Lcom/instagram/android/service/g;

    const-class v3, Lcom/instagram/venue/model/Venue;

    invoke-direct {v2, p0, p0, v3}, Lcom/instagram/android/service/g;-><init>(Lcom/instagram/android/service/f;Lcom/instagram/android/service/f;Ljava/lang/Class;)V

    invoke-virtual {v0, v1, v2}, Lcom/fasterxml/jackson/databind/module/SimpleModule;->addValueInstantiator(Ljava/lang/Class;Lcom/fasterxml/jackson/databind/deser/ValueInstantiator;)Lcom/fasterxml/jackson/databind/module/SimpleModule;

    .line 56
    invoke-virtual {p0, v0}, Lcom/instagram/android/service/f;->registerModule(Lcom/fasterxml/jackson/databind/Module;)Lcom/fasterxml/jackson/databind/ObjectMapper;

    .line 57
    return-void
.end method

.method public static a()Lcom/instagram/android/service/f;
    .locals 1

    .prologue
    .line 29
    sget-object v0, Lcom/instagram/android/service/f;->a:Lcom/instagram/android/service/f;

    if-nez v0, :cond_0

    .line 30
    invoke-static {}, Lcom/instagram/android/service/f;->b()V

    .line 32
    :cond_0
    sget-object v0, Lcom/instagram/android/service/f;->a:Lcom/instagram/android/service/f;

    return-object v0
.end method

.method private static declared-synchronized b()V
    .locals 2

    .prologue
    .line 36
    const-class v1, Lcom/instagram/android/service/f;

    monitor-enter v1

    :try_start_0
    sget-object v0, Lcom/instagram/android/service/f;->a:Lcom/instagram/android/service/f;

    if-nez v0, :cond_0

    .line 37
    new-instance v0, Lcom/instagram/android/service/f;

    invoke-direct {v0}, Lcom/instagram/android/service/f;-><init>()V

    sput-object v0, Lcom/instagram/android/service/f;->a:Lcom/instagram/android/service/f;
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    .line 39
    :cond_0
    monitor-exit v1

    return-void

    .line 36
    :catchall_0
    move-exception v0

    monitor-exit v1

    throw v0
.end method
